Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support multiple rustdoc versions: v16 (stable), v21 (beta), v22 (nightly). #133

Merged
merged 3 commits into from
Sep 28, 2022

Conversation

obi1kenobi
Copy link
Owner

@obi1kenobi obi1kenobi commented Sep 28, 2022

Moved the adapter and indexed crate code to trustfall-rustdoc-adapter, whose major versions match the rustdoc format version number they can parse and query.

Added trustfall_rustdoc, a general-purpose rustdoc querying crate that can support any combination of versions we choose to add, and where versions can be enabled/disabled using crate features. It uses trustfall-rustdoc-adapter. Yes, I made a mess of dashes and underscores again :( No, there's not much that can be done about it now.

Now cargo-semver-checks contains only the CLI app + rustdoc generation facilities + semver queries and associated checking logic.

Tested by generating both stable and beta versions of the test rustdocs and running cargo test. Merging #131 is a prerequisite for actually testing on stable and beta (because we need RUSTC_BOOTSTRAP), so I'll add the test matrix across versions after this and #131 both merge.

Resolves #126.

@obi1kenobi
Copy link
Owner Author

New nightly is out and uses rustdoc v22. Let's see how small of a change I can make adding that be.

@obi1kenobi obi1kenobi added the C-enhancement Category: raise the bar on expectations label Sep 28, 2022
@obi1kenobi
Copy link
Owner Author

New nightly is out and uses rustdoc v22. Let's see how small of a change I can make adding that be.

Answer: a dependency-only change, to update to a newer trustfall_rustdoc and add the new version's feature.

@obi1kenobi obi1kenobi changed the title Add multi-version rustdoc support: v16 (stable) and v21 (beta). Support multiple rustdoc versions: v16 (stable), v21 (beta), v22 (nightly). Sep 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-enhancement Category: raise the bar on expectations
Projects
None yet
Development

Successfully merging this pull request may close these issues.

More resiliency against rustdoc format breaks
2 participants